選擇使用 git archive 還是 git bundle 取決於您是要交付原始程式碼,還是可攜帶的專案歷史紀錄。
1. 元數據包含與排除
主要的技術差異在於對 .git 目錄 (內部物件) 的處理方式。 Git 封存檔 會主動捨棄這些內部元數據,以產生輕量且「乾淨」的檔案結構。相反地, Git 套件檔 則會完整保留整個物件圖譜,有效將此檔案轉化為可攜帶的 來源遠端 (內部物件) 的處理方式。
2. 策略矩陣
| 功能 | Git 封存檔 | Git 套件檔 |
|---|---|---|
| 包含 .git 嗎? | 否 | 是 |
| 提交歷史 | 無 | 完整 |
| 用途 | 部署 | 傳輸 |
| 格式 | .zip / .tar | 二進位 |
3. 狀態持久性
當針對 master 分支 (內部物件),封存檔僅是靜態快照。套件檔則能維持 master 分支 (quick_reference), allowing the recipient to perform git log 以及增量更新。
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>